December 4th at 13:15 Robert Valner will defend his thesis “Design of TeMoto, a Software Framework for Dependable, Adaptive, and Collaborative Autonomous Robots” to obtain the degree of Doctor of Philosophy (Physical Engineering)
Supervisors:
Associate Professor Karl Kruusamäe, University of Tartu
Professor Alvo Aabloo, University of Tartu
Opponent:
Associate Professor Markus Vincze
Automation and Control Institute
Vienna University of Technology, Austria
Summary: Reducing human involvement in hazardous, stressful, and tedious tasks has been among the main driving reasons for reaching self-sufficient, autonomous robots. However, achieving reliable autonomy in unpredictable and dangerous application domains is a challenge that combines two borderline contradictory aspects - system reliability and complexity. Thus, teleoperated robotic systems are often preferred. Nevertheless, when a wired connection is not an option and a wireless connection is intermittent, semi- or fully autonomous capabilities become paramount.
The goal of this work is to a) analyze the software architecture design principles that lead to the increase of LoA of robots deployed for high-risk and high-complexity tasks; and b) develop a software architecture that implements the concluded design principles. This work contributes by developing an adaptive, scalable, multi-agent, and human-robot collaboration-oriented software architecture, TeMoto, derived from analyzing a variety of high-risk task domains and common design principles for a robotic software stack.
TeMoto is based on a decentralized multi-robot variant of a three-layer architecture, i.e., syndicate
architecture, and enables dynamic task (executive layer) and resource (functional layer) management.
Tasks are outlined in Unified Meaning Representation Format (UMRF), a novel domain-specific language that allows the description of complex hierarchical multi-robot tasks in JSON format. TeMoto Action Engine is a C++ based library that implements the semantics of UMRF. Individual behaviors in a task, i.e., actions, are defined as dynamically loadable modular plugins that can be concurrently executed. The resource management layer provides dynamic control over the lifecycle of resources, such as sensors and actuators. It provides reference counting and hierarchical dependency management, allowing for correct resource allocation, deallocation, and error propagation along the dependency chain. TeMoto is completely open-source, and is designed to work with ROS and ROS2, while the core tools can be used outside ROS.
The work is evaluated via five technical demonstrators, covering the fundamental principles of resource management, task management, and use cases involving human-robot interaction and multi-robot systems. The development of TeMoto is an ongoing process, and this work captures the current state, outlining the core design principles and set of implemented tools.
Defence can be followed in Zoom: https://ut-ee.zoom.us/j/9530588152?pwd=ZzgzMjY4YytzUkZ5aVRCd2pOdVNQQT09 (meeting ID: 953 058 8152, passcode: kaitsmine).